package com.ketangpai.admin.utils.config;

import io.minio.MinioClient;
import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Data
@Configuration
public class MinioConfig {

    /**
     * Minio 连接地址
     */
    @Value("${minio.endpoint}")
    private String endpoint;

    /**
     * accessKey 或 账号
     */
    @Value("${minio.accessKey}")
    private String accessKey;

    /**
     * secretKey 或 密码
     */
    @Value("${minio.secretKey}")
    private String secretKey;


    /**
     * 桶名称
     */
    @Value("${minio.bucketName}")
    private String bucketName;

    /**
     * 默认是秒 地址过期时间，设置默认值7200秒
     */
    @Value("${minio.expire}")
    private Integer expire;

    /**
     * 文件存储的路径
     */
    @Value("${minio.pathPrefix}")
    private String pathPrefix;

    @Bean
    public MinioClient minioClient() {
        return MinioClient.builder()
                .endpoint(endpoint)
                .credentials(accessKey, secretKey)
                .build();
    }
}
